/**
* 本文件用来定义全局的内存对象
*/
#include <stdint.h>
#include <string.h>

#include "main.h"
#include "BaseDef.h"


//__attribute__((constructor)) void Memory_Define_Init(){
	// 初始化u1发送缓冲区
//	u1_tx_bufs_manager.read_line = 0;
//	u1_tx_bufs_manager.write_line = 0;
//	u1_tx_bufs_manager.read_seek = &( u1_tx_bufs_manager.data_list[0] );
//	u1_tx_bufs_manager.write_seek = &( u1_tx_bufs_manager.data_list[0] );
//  u1_tx_bufs_manager.ClearBufs = ClearBufsInterface;
//	
//	for (uint32_t index=0; index<USART_BUF_LIST_SIZE; index++){
//		u1_tx_bufs_manager.data_list[index].data_len = 0;
//		u1_tx_bufs_manager.data_list[index].GetManagerAddr = GetManagerAddrInterface;
//	}
//	// 初始化u1发送缓冲区
//	
//	// 初始化u1发送缓冲区
//	u1_rx_bufs_manager.read_line = 0;
//	u1_rx_bufs_manager.write_line = 0;
//	u1_rx_bufs_manager.read_seek = &( u1_rx_bufs_manager.data_list[0] );
//	u1_rx_bufs_manager.write_seek = &( u1_rx_bufs_manager.data_list[0] );
//  u1_rx_bufs_manager.ClearBufs = ClearBufsInterface;
//	
//	for (uint32_t index=0; index<USART_BUF_LIST_SIZE; index++){
//		u1_rx_bufs_manager.data_list[index].data_len = 0;
//		u1_rx_bufs_manager.data_list[index].GetManagerAddr = GetManagerAddrInterface;
//	}
//	// 初始化u1发送缓冲区
//}

//Usart_Transport_Bufs_Manager_Def u1_tx_bufs_manager;
//Usart_Transport_Bufs_Manager_Def u1_rx_bufs_manager;

//void* GetManagerAddrInterface(Usart_Transport_Bufs_Def* self){
//	// offsetof就是用来回去该对象在父结构体中地址的。将本结构体起始指向父结构体偏移地址即可获得父地址。
//	return (void*)((uint32_t)self - (uint32_t)offsetof(struct __Tag_Usart_Transport_Bufs_Manager_Def, data_list));
//}

//void ClearBufsInterface(struct __Tag_Usart_Transport_Bufs_Manager_Def* self){
//	// 重新初始化缓冲区
//	self->read_line = 0;
//	self->write_line = 0;
//	self->read_seek = &( self->data_list[0] );
//	self->write_seek = &( self->data_list[0] );
//	
//	for (uint32_t index=0; index<USART_BUF_LIST_SIZE; index++){
//		self->data_list[index].data_len = 0;
//		memset(self->data_list[index].data, USART_BUF_SIZE, 0);
//	}
//	
//	SWDT_FeedDog();
//}
